<HTML>
<HEAD>
<TITLE>Display Class Documentation</TITLE>
</HEAD>
<BODY>
<A HREF="#toc">Table of Contents</A><P>
_________________________________________________________________
<P>

<H2><A NAME="sect1" HREF="#toc1"><B>NAME</B></A></H2>
Display - create and manipulate a display widget.
<P>

<H2><A NAME="sect2" HREF="#toc2"><B>SYNOPSIS</B></A></H2>
<B>Display</B> <I>pathName</I> ?<I>options</I>?
<P>

<H2><A NAME="sect3" HREF="#toc3"><B>INHERITANCE</B></A></H2>
itk::Archetype &lt;- itk::Widget &lt;-
<A HREF="Dm.html">Dm</A> &lt;- Display<BR>
<A HREF="View.html">View</A> &lt;- Display
<P>

<H2><A NAME="sect4" HREF="#toc4"><B>STANDARD OPTIONS</B></A></H2>
<DL>
<DD><B>background cursor</B>
</DD>
</DL>
See the &quot;options&quot; manual entry for details on the standard
options.
<P>

<H2><A NAME="sect6" HREF="#toc6"><B>INHERITED OPTIONS</B></A></H2>
Options inherited from itk::Archetype:<BR>
<DL>
<DD><B>clientdata</B>
</DD>
</DL>
<P>
Options inherited from <A HREF="View.html#sect7">View</A>:<BR>
<DL>
<DD><B>aet center perspective_angle size</B>
</DD>
</DL>
<P>
Options inherited from <A HREF="Dm.html#sect7">Dm</A>:<BR>
<DL>
<DD><B>bg debug dmsize fb_active fb_update light
linestyle linewidth listen perspective type zbuffer zclip</B>
</DD>
</DL>
<P>

<H2><A NAME="sect7" HREF="#toc7"><B>WIDGET-SPECIFIC OPTIONS</B></A></H2>
<DL>
<DT>Name: <DD>          <B>rscale</B>
</DD>
<P>
<DT>Class: <DD>         <B>Rscale</B>
</DD>
<P>
<DT>Command-Line Switch: <DD>          <B>-rscale</B>
</DD>
<P>
Specifies how sensitive the mouse is when rotating the view.
<P>
<DT>Name: <DD>          <B>sscale</B>
</DD>
<P>
<DT>Class: <DD>         <B>Sscale</B>
</DD>
<P>
<DT>Command-Line Switch: <DD>          <B>-sscale</B>
</DD>
<P>
Specifies how sensitive the mouse is when scaling the view.
</DL>
<P>

<H2><A NAME="sect8" HREF="#toc8"><B>DESCRIPTION</B></A></H2>
The <B>Display</B> command creates a new window
(given by the <I>pathName</I> argument) and makes it into
a display widget for displaying geometry.
The display widget also inherits from
<A HREF="View.html">View</A>, so it can
manipulate the view parameters.
This widget also maintains a list of
<A HREF="../librt/dg_obj.html">drawable geometry objects</A>
which it can draw.
Additional options, described above, may be specified on the
command line or in the option database to configure aspects
of the display manager widget.
The <B>Display</B> command returns its <I>pathName</I> argument.
At the time this command is invoked, there must not exist a
window named <I>pathName</I>, but pathName's parent must exist.
<P>

<H2><A NAME="sect9" HREF="#toc9"><B>METHODS</B></A></H2>
The <B>Display</B> command creates a new Tcl command whose name
is <I>pathName</I>. This command may be used to invoke various
operations on the display widget. It has the following general
form:
<P>
<I>pathName</I> <I>option</I> ?<I>arg</I> <I>arg</I> ...?
<P>
<I>Option</I> and the <I>arg</I>s determine the exact behavior of the command.
The following commands are possible for display widgets:
<P>

<H3><A NAME="sect10" HREF="#toc10"><B>BUILT-IN METHODS</B></A></H3>
<DL>
<DD><B>isa info</B>
</DD>
</DL>
<P>

<H3><A NAME="sect11" HREF="#toc11"><B>ASSOCIATED METHODS</B></A></H3>
Methods associated with LIBDM's
<A HREF="../libdm/dm_obj.html#sect9">display manager object</A>:<BR>
<DL>
<DD><B>bg bounds clear debug dmsize drawBegin drawEnd
drawGeom drawLine drawPoint drawString fg flush get_aspect
light linestyle linewidth listen loadmat normal observer
perspective refreshfb sync zbuffer zclip</B>
</DD>
</DL>
<P>
Methods associated with
<A HREF="../librt/view_obj.html#sect9">LIBRT's view object</A>:<BR>
<DL>
<DD><B>aet center model2view observer perspective
pmodel2view rot size slew tra zoom</B>
</DD>
</DL>
<P>

<H3><A NAME="sect12" HREF="#toc12"><B>INHERITED METHODS</B></A></H3>
Methods inherited from Archetype:<BR>
<DL>
<DD>
<B>cget component configure</B>
</DD>
</DL>
Methods inherited from <A HREF="View.html#sect13">View</A>:<BR>
<DL>
<DD>
<B>get_viewname</B>
</DD>
</DL>
Methods inherited from <A HREF="Dm.html#sect13">Dm</A>:<BR>
<DL>
<DD>
<B>dmsize fb_active fb_observe</B>
</B>
</DD>
</DL>
<P>

<H3><A NAME="sect13" HREF="#toc13"><B>WIDGET-SPECIFIC METHODS</B></A></H3>
<DL>
<DT><I>pathName</I> <A NAME="add"><B>add</B></A> <I>glist</I></DT>
<DD>Add the specified list of drawable geometry objects (i.e. <I>glist</I>)
to this object's list of drawable geometry objects.
</DD>
<P>
<DT><I>pathName</I> <A NAME="attach_view"><B>attach_view</B></A></DT>
<DD>Cause this object to observe its view (i.e. whenever the view changes, this
object is notified).
</DD>
<P>
<DT><I>pathName</I> <A NAME="attach_drawable"><B>attach_drawable</B></A> <I>dg</I></DT>
<DD>Cause this object to observe the specified drawable geometry
object (i.e. whenever the drawable geometry object changes, this
object is notified).
</DD>
<P>
<DT><I>pathName</I> <A NAME="autoview"><B>autoview</B></A> ?<I>gindex</I>?</DT>
<DD>
The first order of business is to decide which drawable geometry
object in the list will be used to invoke its
<A HREF="../librt/dg_obj.html#get_autoview">get_autoview</A> method.
If <I>-geo gindex</I> is specified, then use that as an index into the
list of drawable geometry objects in order to determine the drawable
geometry object. Otherwise, use the first drawable geometry object in the list.
Once found, the drawable geometry object's get_autoview method is called
to obtain optimal viewing parameters for its geometry.
These parameters are then used to set this object's view.
</DD>
<P>
<DT><I>pathName</I> <A NAME="contents"><B>contents</B></A></DT>
<DD>Return the list of drawable geometry objects referenced by this object.
</DD>
<P>
<DT><I>pathName</I> <A NAME="detach_drawable"><B>detach_drawable</B></A> ?<I>dg</I>?</DT>
<DD>Cause this object to stop observing the specified drawable geometry
object (i.e. <I>dg</I>).
</DD>
<P>
<DT><I>pathName</I> <A NAME="detach_view"><B>detach_view</B></A></DT>
<DD>Cause this object to stop observing its view.
</DD>
<P>
<DT><I>pathName</I> <A NAME="refresh"><B>refresh</B></A></DT>
<DD>Causes this object to draw its list of drawable geometry objects.
</DD>
<P>
<DT><I>pathName</I> <A NAME="remove"><B>remove</B></A> ?<I>glist</I>?</DT>
<DD>Remove the specified list of drawable geometry objects (i.e. <I>glist</I>)
from this object's list of drawable geometry objects.
</DD>
<P>
<DT><I>pathName</I> <A NAME="rt"><B>rt</B></A> ?<I>-geo gindex</I>? ?<I>args</I>?</DT>
<DD>
The first order of business is to decide which drawable geometry
object in the list will be used to invoke its
<A HREF="../librt/dg_obj.html#rt">rt</A> method.
If <I>-geo gindex</I> is specified, then use that as an index into the
list of drawable geometry objects in order to determine the drawable
geometry object. Otherwise, use the first drawable geometry object in the list.
Once found, the drawable geometry object's rt method is called
with this object's <A HREF="../librt/view_obj.html">view object</A> as the
first argument.
</DD>
<P>
<DT><I>pathName</I> <A NAME="rtcheck"><B>rtcheck</B></A> ?<I>-geo gindex</I>? ?<I>args</I>?</DT>
<DD>
The first order of business is to decide which drawable geometry
object in the list will be used to invoke its
<A HREF="../librt/dg_obj.html#rtcheck">rtcheck</A> method.
If <I>-geo gindex</I> is specified, then use that as an index into the
list of drawable geometry objects in order to determine the drawable
geometry object. Otherwise, use the first drawable geometry object in the list.
Once found, the drawable geometry object's rtcheck method is called
with this object's <A HREF="../librt/view_obj.html">view object</A> as the
first argument.
</DD>
<P>
<DT><I>pathName</I> <A NAME="update"><B>update</B></A></DT>
<DD>This method is provided for the observed objects to call. It simply
calls <A HREF="#refresh">refresh</A>.
</DD>
<P>
</DL>
<P>

<H2><A NAME="sect15" HREF="#toc15"><B>EXAMPLE</B></A></H2>
cwish> Display .d -dmsize 400
<BR>
.d
<BR>
cwish> pack .d -expand yes -fill both
<BR>
cwish> Database db moss.g
<BR>
db
<BR>
cwish> db draw all.g
<BR>
cwish> .d add [db get_dgname]
<P>

<H2><A NAME="sect16" HREF="#toc16"><B>ACKNOWLEDGMENTS:</B></A></H2>

Mark L. Ulferts &lt;mulferts@austin.dsccc.com&gt;
<PRE>        Basic layout for documenting classes.</PRE>
<P>

<H2><A NAME="sect17" HREF="#toc17"><B>AUTHOR</B></A></H2>
<P>
Robert G. Parker
<P>

<H2><A NAME="sect18" HREF="#toc18"><B>KEYWORDS</B></A></H2>

<P>

<HR><P>
<A NAME="toc"><B>Table of Contents</B></A><P>
<UL>
<LI><A NAME="toc1" HREF="#sect1">NAME</A></LI>
<LI><A NAME="toc2" HREF="#sect2">SYNOPSIS</A></LI>
<LI><A NAME="toc3" HREF="#sect3">INHERITANCE</A></LI>
<LI><A NAME="toc4" HREF="#sect4">STANDARD OPTIONS</A></LI>
<LI><A NAME="toc6" HREF="#sect6">INHERITED OPTIONS</A></LI>
<LI><A NAME="toc7" HREF="#sect7">WIDGET-SPECIFIC OPTIONS</A></LI>
<LI><A NAME="toc8" HREF="#sect8">DESCRIPTION</A></LI>
<LI><A NAME="toc9" HREF="#sect9">METHODS</A></LI>
<LI><A NAME="toc10" HREF="#sect10">BUILT-IN METHODS</A></LI>
<LI><A NAME="toc12" HREF="#sect12">INHERITED METHODS</A></LI>
<LI><A NAME="toc13" HREF="#sect13">WIDGET-SPECIFIC METHODS</A></LI>
<LI><A NAME="toc15" HREF="#sect15">EXAMPLE</A></LI>
<LI><A NAME="toc16" HREF="#sect16">ACKNOWLEDGMENTS</A></LI>
<LI><A NAME="toc17" HREF="#sect17">AUTHOR</A></LI>
<LI><A NAME="toc18" HREF="#sect18">KEYWORDS</A></LI>
</UL>
</BODY>
</HTML>
